Fast path content delivery over metro access networks

ABSTRACT

Techniques are described that allow fast path delivery of content from content data networks directly to metro transport networks so as to bypass Internet service provider (ISP) networks. The metro transport network is positioned between subscriber devices and an Internet service provider network that authenticates the subscriber devices and allocates respective layer three (L3) addresses from an Internet Protocol (IP) network address prefix assigned to the Internet service provider network. Routes within the metro transport network, including an access router, ISP-facing provider edge routers and one or more peering routers, establish an EVPN within the metro transport network. The access router outputs, within the EVPN and to the peering router, an EVPN route advertisement that advertises network address reachability information of the subscriber devices (e.g., the IP network address prefix or MAC/IP address of the subscriber devices) on behalf of the Internet service provider network.

TECHNICAL FIELD

The invention relates to computer networks and, more specifically, to delivering content to subscribers over metro access networks.

BACKGROUND

Many metropolitan regions have installed metropolitan (metro) transport networks to provide high-bandwidth connectivity between local subscribers and their ISPs, onwards to a larger packet-based service network, such as the Internet. Each subscriber typically contracts with any of a number of Internet service provider (ISP) networks connected to the metro transport network, and each ISP network provides an anchor for communication sessions for the subscribers and manages network services for the subscribers such as authentication, accounting and billing.

The subscribers may utilize a wide variety of devices to connect to the ISP networks to access resources and services provided by the Internet. For example, subscribers typically utilize desktop computers, laptop computers, mobile smart phones and feature phones, tablet computers, Smart TVs and the like. The metro transport network typically provides layer two (L2) switching mechanisms for transporting packet-based data between the subscribers and their respective ISPs such that IP (layer three—L3) communication sessions can be established for the subscribers at the ISPs for communicating with resources beyond the ISP, such as content data networks or the Internet.

SUMMARY

In general, techniques are described that allow fast path delivery of content from content data networks directly to subscribers of Internet service providers that are connected to metro transport networks. As described herein, the techniques for fast path delivery of content enables content network providers to forward content directly to metro transport networks for delivery to subscribers so as to bypass Internet service provider (ISP) networks. The ISP networks, however, may retain ownership over IP services provided to the subscribers, including authentication, accounting and other services.

As described herein, edge switches/routers of a metro transport network implement Ethernet Virtual Private Network (EVPN) protocol that includes one or more peering provider edge (P-PE) routers as a member of the EVPN. ISPs and a metro carrier associated with the metro transport network collaborate such that the access edge routers of the EVPN advertise network address reachability information (e.g., IP prefixes of the ISPs or IP/MAC combinations) into the EVPN on behalf of the ISPs, where the advertisements specify that the network address information owned and used by the ISPs to provide IP services to subscribers 18 are actually reachable through the access edge routers. The P-PE router provides IP peering relationships, e.g., by way of an external BGP (E-BGP) routing session, for sharing IP prefix reachability information of the metro transport network with border routers of the content data networks. As such, the P-PEs provide peering points for the EVPN-based metro network such that IP traffic destined for the subscribers can be transported directly from the content data networks to the subscribers by way of the metro transport network.

The techniques may enable content data network to selectively inject content-rich traffic closest to the subscribers, thereby improving subscriber experience and satisfaction. Remaining inbound network traffic destined for the subscribers continues to flow through the Internet service provider and through the typical L2 switching framework (which is provided by the EVPN in this case) provided by the metro transport network.

In one example, a system comprises a metro transport network positioned between a set of subscriber devices and at least one Internet service provider network that authenticates the subscriber devices and allocates the subscriber devices' respective Internet Protocol (IP) network addresses from a respective IP network address prefix assigned to the Internet service provider network. The metro transport network comprises at least one access router that is connected to the subscribers' devices by one or more access links and at least one peering router of the metro transport network. The metro transport network, including the access router and the peering router, establish an EVPN within the metro transport network and the access router outputs, within the EVPN and to the peering router, an EVPN route advertisement that advertises the IP network address prefix on behalf of the Internet service provider network. The EVPN route advertisement specifies the L3 network address prefix of the Internet service provider network and indicates that the IP network addresses allocated to the subscribers from the IP network address prefix of the Internet service provider network are reachable through the access router.

In another example, a method comprises establishing an Ethernet Virtual Private Network (EVPN) within a metro transport network positioned between at least one Internet service provider network and a set of subscriber devices. The metro transport network provides layer two (L2) packet switching for transporting network packets between the Internet service provider network and the subscriber devices. The Internet service provider network authenticates the subscriber devices and allocates the subscriber devices respective IP network addresses from an L3 network address prefix assigned to the Internet service provider network. The EVPN is established within the metro transport network by at least one access router/switch that is connected to the subscribers' devices by one or more access links and by at least one peering router of the metro transport network. The method further comprises outputting, within the EVPN based metro network by the access router and to the peering router, an EVPN route advertisement that advertises the IP address (/32 host address) or an IP prefix on behalf of the Internet service provider network, wherein the EVPN route advertisement specifies the IP address/prefix of the Internet service provider network and indicates that the IP addresses allocated to the subscribers from the IP address pool/prefix of the Internet service provider network are reachable through the access router.

In another example, an access router of a metro transport network is positioned between at least one Internet service provider network and a set of subscriber devices. The access router comprises a control unit having at least one processor coupled to a memory. The control unit executes software configured to establish an Ethernet Virtual Private Network (EVPN) with a peering router within the metro transport network. The control unit is configured to receive data specifying an IP address or a prefix assigned to the Internet service provider network and output, within the EVPN and to the peering router, an EVPN route advertisement that advertises the IP address or prefix on behalf of the Internet service provider network. The EVPN route advertisement specifies the IP address or a prefix of the Internet service provider network and indicates that the IP addresses allocated to the subscribers from the IP address pool/prefix of the Internet service provider network are reachable through the access router.

In another example, a non-transitory computer-readable storage medium comprises executable instructions configured to perform the methods described herein.

The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example prior art network system.

FIG. 2 is a block diagram illustrating an example network system in accordance with techniques described herein.

FIG. 3 is a block diagram illustrating further details of an example router in accordance with techniques of the disclosure.

FIG. 4 is a flowchart illustrating example operations of multiple network devices in accordance with techniques of the disclosure.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating an example network system 2 in accordance with techniques described herein. As shown in the example of FIG. 1, network system 2 includes a metro access and aggregation network 4 that is coupled to an Internet service provider network 7. In general, Internet service provider network 7 is typically owned by an Internet Service Provider (ISP) and operated as a private network that provides packet-based network services to subscriber devices 18A, 18B (herein, “subscriber devices 18”). Subscriber devices 18A may be, for example, personal computers, laptop computers or other types of computing devices associated with subscribers, e.g., Smart TVs, wireless-capable netbooks, video game devices, smart phones, personal data assistants (PDAs) or the like, connected to the network via a customer premise switch or a router (CPE). Each of subscriber devices 18 may run a variety of software applications, such as word processing and other office support software, web browsing software, software to support media streaming content from services such as Netflix and YouTube, software to support voice calls, video games, videoconferencing, and email, among others. That is, Internet service provider network 7 provides authentication and establishment of network access for subscriber devices 18 such that the subscriber device may begin exchanging data packets with one or more content data networks (CDNs) 8 by way of Internet backbone 12 or by direct peering with CDN networks.

In general, each CDN 8 is typically a private network of interconnected devices that cooperate to distribute content to clients using one or more services. Each of CDN 8 may include one or more data centers having data servers, web servers, application servers, databases, computer clusters, mainframe computers, and any other type of server, computing element, and/or database that may be employed by a content service provider to facilitate the delivery of content to subscriber devices 18 via Internet backbone 12 and Internet service provider network 7. Such content may include, for instance, streaming media files, data files, software distribution, domain name system information, documents, and database query results, among others. Accordingly, examples of services offered by CDN 8 may include hyper-text transfer protocol (HTTP), HTTP-based adaptive streaming, Real-Time Streaming Protocol (RTSP) streaming, other media streaming, advertising, file transfer protocol (FTP), and others.

In the example of FIG. 1, metro transport network 24 provides layer two (L2) Ethernet switching transport services for network traffic associated with subscriber devices 18. Metro transport network 24 typically includes internal transport nodes (“N”) 19, such as Ethernet switches and underlying transport systems for transporting, multiplexing and switching communications through high-speed links between access provider edge routers (A-PEs), 36 and network provider edge routers (N-PE) 30. Although, for simplicity, only a single Internet service provider network 7 is shown, metro transport network 24 may provide metro access, aggregation and transport of packets for subscriber devices 18 of a plurality of different Internet service providers. In general, metro transport network 24 is typically owned and operated by a metro carrier while each of Internet service provider networks 7 is own and operated by a separate (either administrative or legal separation) Internet service provider.

In this example of FIG. 1, A-PEs 36 operate at the border of metro transport network 24 and provide connectivity for access networks 27 respectively. In general, ANs 27 provide subscriber devices 18 and CPEs 18 with access to metro transport network 24. A-PEs 36, for example, typically include functionality to aggregate output from one or more endpoints associated with subscriber devices 18 into a higher-speed uplink to metro transport network 24. For example, subscriber devices 18 may connect to local customer premise equipment (CPE) such as DSL or cable modems, and A-PEs 36 may comprise digital subscriber line access multiplexers (DSLAMs) or other switching devices.

In general, subscriber devices 18/CPEs 18 are associated with customers of an Internet service provider that owns and operates Internet service provider network 7. As such, Internet service provider network 7 handles authentication and session establishment so as to provide network access to subscriber devices 18. Broadband network gateways (BNG) 23 provide routing and switching functions for connectivity to metro transport network 24 via N-PEs 30 and provide endpoints for and management of IP sessions established for subscriber devices 18. In another example, BNGs 23 may be a Broadband Remote Access Servers (BRASs) or other routing device that provide anchor points for subscriber sessions.

Upon authentication of a given subscriber device 18/CPE 18, Internet service provider network 7 allocates an IP address (public/internet routable or private) to the subscriber from the IP domain of the service provider and provides IP connectivity (L3) services for communication sessions associated with the subscribers. For example, AAA server 11 of service provider network 7 is typically an authentication, authorization and accounting (AAA) server to authenticate the credentials of a subscriber requesting a network connection. The AAA server 11 may be, for example, a Remote Authentication Dial-In User Service (RADIUS) server. As another example, AAA server 11 can be a DIAMETER server. Upon authenticating a network access request from a subscriber device 18, AAA server 11 assigns a layer three (L3) network address (e.g., an IPv4 or IPv6 network address) for receiving data services through Internet service provider network 7. Policy control server 14 represents a network device that provides a Policy Control and Charging Rules Function (PCRF) for subscriber devices 18.

In this way, layer two (L2) network transport functions and layer three (L3) network functions are generally split between metro transport network 24 and Internet service provider network 7 respectively. As one example, metro transport network 24 executes a Virtual Private Local Area Network Service (VPLS) or Ethernet Virtual Private Network (EVPN) Service that enables metro transport network 24 to operate as an L2 network that carries L2 traffic for subscriber devices 18 to BNGs 23. BNGs 23 perform L3 functionality, i.e., L3 address assignment and routing for subscriber devices 18 in the subscriber's respective Internet service provider, i.e., ISP network 7 in this example. For example, by executing the VPLS or EVPN E-LAN service, metro transport network 24 transports L2 communications, such as Ethernet packets across the transport network. More information concerning the use of VPLS can be found in RFC 4761 entitled “Virtual Private LAN Service (VPLS) Using BGP for Auto-Discovery and Signaling,” dated January 2007, which is hereby incorporated by reference as if fully set forth herein. Similarly, more information about EVPN can be found in RFC 7432, incorporated herein. Reference to network layers followed by a numeral may refer to a particular layer of the Open Systems Interconnection (OSI) model. More information concerning the OSI model can be found in a IEEE publication entitled “OSI Reference Model—the ISO Model of Architecture for Open Systems Interconnection,” by Hubert Zimmermann, published in IEEE Transactions on Communications, vol. 28, no. 4, dated April 1980, which is hereby incorporated by reference as if fully set forth herein.

After authentication and establishment of network access through Internet service provider network 7, any one of subscriber devices 18 may begin exchanging data packets with CDNs 8. During this process, the IP addresses assigned by Internet service provider network 7 to subscriber devices 18 may be translated to public addresses associated with routing prefixes of Internet service provider network 7 for purposes of packet-based communication on Internet backbone 12. Moreover, gateway 21 provides layer three (L3) routing functions for reaching subscriber devices 18 through Internet service provider network 7. That is, gateway 21 advertises L3 reachability information (e.g., routes) for reaching the public address prefixes associated with Internet service provider network 7. Upon receiving the layer three (L3) routing information, autonomous system border routers (ASBRs) 30 update their respective routing tables with network layer reachability information for reaching address prefixes advertised by Internet service provider network(s) 7. As such, using L3 routing information for reaching subscriber devices 18 and without learning L2 network addresses for the subscribers, packet-based content provided by CDNs 8 and addressed to subscriber devices 18 flows through Internet backbone 12 to Internet service provider network 7 for delivery to individual subscriber devices 18 by way of metro transport network 24 and access networks 27. Although not shown, Internet service provider network 7 may include other devices to provide other services, such as security services, load balancing, billing, deep-packet inspection (DPI), and other services for traffic traversing Internet service provider network 7.

FIG. 2 is a block diagram illustrating an example network system in accordance with the techniques described herein. In particular, techniques are described that allow fast path delivery of heavy, content-rich data from CDNs 8 directly to metro transport network 24 so as to bypass Internet service provider network 7 for delivery to subscriber devices 18. This allows CDNs 8 to selectively inject heavy traffic closest to subscriber devices 18, thereby improving subscriber experience and satisfaction. Remaining network traffic associated with Internet backbone 12 continues to flow through Internet service provider 7 and through the typical L2 connectivity provided by EVPN-based metro transport network 24. As described herein, the techniques are generally backward compatible with typical infrastructure deployed within existing metro transport networks such that metro transport network 24 and CDNs 8 may readily implement the fast path offloading techniques described herein.

As shown in FIG. 2, instead of implementing only a layer two (L2) emulation service for transporting traffic, such as VPLS, metro transport network 24 implements a virtual private network (EVPN) based layer 2 network to provide connectivity between subscriber devices 18 and Internet service provider network 7 even though the Internet service provider network 7 retains responsibility for authenticating subscriber devices 18 and assigning L3 network addresses to the subscribers.

In one example, metro transport network 24 implements an Ethernet Virtual Private Network (EVPN) 26. In general, edge routers of metro transport network 24 (e.g., A-PEs 36 and N-PEs 30) along with a newly introduced peering provide edge (P-PE) router of metro transport network 24 operated by the metro transport carrier are configured to execute the EVPN protocol within their respective control planes (also referred to as routing engines) to communicate with each other and exchange configuration information necessary to establish and maintain EVPN 26. In an EVPN, L2 address learning (e.g., MAC learning) between the edge routers occurs in the control plane by exchanging EVPN messages according to the EVPN protocol, in contrast to traditional bridging that occurs in VPLS in which L2 address learning occurs in the data plane (i.e., forwarding components) while forwarding L2 traffic. For example, control planes of A-PEs 36, N-PEs 30 and P-PE are configured to execute a routing protocol, such as the Border Gateway Protocol (BGP), to exchange enhanced messages so as to communicate with each other regarding EVPN 26. That is, control planes of A-PEs 36, N-PEs 30 and P-PE 80 may execute the BGP protocol to exchange BGP messages for MAC address signaling/learning as well as for access topology and VPN endpoint discovery with respect to EVPN 26. A-PEs 36, N-PEs 30 and P-PE 80 may be connected by an MPLS LSP infrastructure or may be connected by an IP infrastructure in which case IP/GRE tunneling or other IP tunneling can be used to transport L2 communications through EVPN 26. Additional information with respect to the EVPN protocol is described in “BGP MPLS Based Ethernet VPN,” RFC 7432, Internet Engineering Task Force (IETF), the entire contents of which are incorporated herein by reference.

As shown in FIG. 2, metro transport network 24 has been configured to include one or more peering provider edge (P-PE) routers 80 that allow one or more of CDNs 8 to inject content directly into metro transport network 24. As discussed above, P-PE router 80 is typically owned and operated by the metro carrier and participates in EVPN 26. Moreover, P-PE router 180 provides layer three (L3) peering relationships, e.g., by way of an external BGP (E-BGP) routing session 42 or by way of static routing, for sharing L3 reachability information of metro transport network 24 with L3 routers of CDNs 8, such as ASBR 30. In particular, as described above, P-PE 80 participates in EVPN 26. For example, the control plane of P-PE 80 is configured to execute the BGP and EVPN protocols so as to participate in EVPN 26. As such, P-PE 80 provides a logical access point for EVPN 26 such that communications for subscriber devices 18 can be transported directly between A-PEs 36 and P-PE 80 over metro transport network 24.

Moreover, although authentication of subscriber devices 18 and allocation of L3 network addresses to the subscribers is still performed by Internet service provider network 7, the Internet service provider(s) and metro carrier operator arrange to have the network address information (e.g., respective address prefixes owned by the ISPs or IP address/MAC address combinations to be used by subscriber devices) advertised by A-PEs 36 of the metro carrier instead of, or in addition to, the typical routing protocol advertisement of those prefixes from gateway 21 of Internet service provider network 7 to Internet backbone 12. In one example, A-PEs 36 are programmed by the metro carrier with data specifying the IP address prefixes of any of the Internet service provider networks 7 for which the ISP has agreed to participate in the fast path offloading techniques described herein. For example, an administrator for the metro carrier may input a list, file or other data structure specifying the IP address prefixes of the ISP or MAC/IP addresses to be advertised by the A-PEs. In another example, BNGs 23 of the agreeing ISPs may be configured to leak or otherwise communicate the layer three address subnets (prefixes) allocated to and owned by the ISP to A-PEs 36. For example, a protocol executing within control planes of Ns 19 may output messages 39 to selectively communicate to A-PEs 36 the network address information assigned to the corresponding Internet service provider network 7 and utilized for subscriber devices 18. Example protocols that may be used include the HTTP protocol, an enhanced routing protocol such as BGP, or even a proprietary protocol.

In response, the routing protocols executing within the control planes of A-PEs 36 update respective routing tables to the associated ISP address prefixes with subscriber devices 18 reachable through local interface ports. Moreover, the routing protocols of A-PEs 36 are configured to output EVPN messages 41 to advertise the layer three prefixes or IP addresses/MAC address combinations into EVPN 26 on behalf of Internet service provider network 7, where the EVPN messages 41 announce that the IP addresses allocated from the IP prefixes used by Internet service provider network 7 to provide IP services to subscriber devices 18 are actually reachable through the A-Pes. As one example, A-PEs 36 may construct EVPN messages 41 as an IP Prefix Advertisement route (i.e., Route Type 5) of a BGP EVPN, as defined by “IP Prefix Advertisement in EVPN,” draft-ietf-bess-evpn-prefix-advertisement-01, Internet Engineering Task Force (IETF), Mar. 9, 2015, the entire contents of which are incorporated herein by reference. Additionally, A-PEs 36 may construct EVPN messages 41 as a MAC+IP address Advertisement route (i.e., Route Type 2) of a BGP EVPN, as defined by “MAC/IP Advertisement in EVPN,” RFC 7432, Internet Engineering Task Force (IETF), the entire contents of which are incorporated herein by reference.

As a member of EVPN 26, P-PE router 80 learns the L3 address prefixes or IP addresses associated with subscriber devices 18 and reachable through A-PEs 36 via EVPN 26. In response, P-PE router 80 communicates the routes through routing protocol peering session 42, which may be a BGP peering session between the control places of P-PE router 80 and ASBRs 30 of one or more CDNs 8, such as ASBR 30 of CDN 8A. In this way, CDN 8A learns of the direct access path to metro transport network 24 and, in particular, associates P-PE 80 as the forwarding next hop for the fast path for reaching subscriber devices 18. In many deployments, CDNs 8 typically have local infrastructure 43 in many metro areas for caching and delivery of content. For example, in many regions CDNs typically have, or may now elect to construct, computing systems in local data centers that operate as Internet exchanges for the metro region. As such, the techniques enable CDNs 8 to selectively direct content directly to subscriber devices 18 from their computing systems in local or regional data centers to P-PE router 80 as an access point to EVPN 26 of metro transport network 24, thereby providing a fast path for heavy content transmissions.

FIG. 3 is a flowchart illustrating example operation of a network system in accordance with the techniques described herein. Initially, address prefixes owned by the ISP are communicated to metro carrier for configuration of the access provider edge routers, such as A-PEs 36 (100, 102). As explained above, A-PEs 36 may be programmed by the metro carrier with network address information from the Internet Service Provider networks, such as data specifying the IP address prefixes of any of the Internet service provider networks 7 for which the ISP has agreed to participate in the fast path offloading techniques described herein. As other examples, BNGs 23 of the agreeing ISPs may output messages 39 to selectively communicate to A-PEs 36 the one or more public IP address prefixes assigned to the corresponding Internet service provider network 7 and utilized for subscriber devices 18. As an another example, BNGs may output to A-PEs 36 one or more MAC/IP address combinations on behalf of the Internet Service Provider network 7.

Next, A-PEs 36 update their respective routing tables to the associated ISP address prefixes with subscriber devices 18 reachable through local interface ports and output EVPN messages 41 to advertise the layer three prefixes into EVPN 26 on behalf of Internet service provider network 7, where the EVPN messages 41 specify routes to prefixes used by Internet service provider network 7 to provide IP services to subscriber devices 18 are actually reachable through the A-PEs (104). Alternatively, A-PEs 36 may construct EVPN messages 41 as a MAC+IP address Advertisement route (i.e., Route Type 2) of a BGP EVPN to communicate one or more MAC/IP address combinations on behalf of the Internet Service Provider network 7.

As a member of EVPN 26, P-PE router 80 receives the EVPN route advertisement announcing the L3 address prefixes associated with subscriber devices 18 and reachable through A-PEs 36 via EVPN 26, such as by an EVPN Type 5 routing advertisement that advertises IP prefixes rather than L2 MAC addresses of the subscribers or an EVPN Type 2 MAC+IP route advertisement (106). In response, P-PE router 80 updates a BGP routing table on the P-PE 80 router and communicates L3 reachability information to ASBRs of the CDNs by constructing and outputting, in this example, BGP messages through routing protocol peering session 42 (106). Upon receiving the BGP message through peering session 42, ASBR 31 of CDN 8A updates its BGP routing table to associate P-PE 80 as next hops for the fast path (i.e., bypass path) for forwarding content to subscriber devices 18 directly through metro transport network 24 so as to bypass Internet service provider network 7.

Upon receiving a network access request from a given subscriber device 18, AAA server 11 of Internet service provider network 7 authenticates the subscriber and allocates an IP address for the subscriber from the IP address prefix assigned to and owned by the ISP (110). As such, network communications are enabled to flow from the subscriber through the subscriber session over the switching mechanisms provided by metro transport network 24 and the L3 services and routing functions provided by Internet service provider network 7 to Internet backbone 12 and CDNs 8 (112).

Upon receiving content requests from subscriber devices 18, CDNs 8 process the content requests and select a path for delivery of the content (114). For example, CDNs 8 may elect to deliver specifically requested content through the typical path through Internet service provider network 7 or may elect to deliver the content through the fast, bypass path that directly injects the content into metro transport network 24 by way of P-PE router 80. CDNs 8 may, for example, install policies that direct the content to the appropriate ASBRs 30, 31 and along the selected route based on, for example, metrics describing a total size of the content or a priority associated with the content (e.g., real-time video or audio of, for example, a meeting or concert). Based on the selected path, CDNs 8 construct packets destined to the IP address(es) of the requesting subscriber devices 18 and outputs the IP packets encapsulating the requested content along the selected path.

Upon receiving content from a CDN 8, such as from ASBR 31 of CDN 8A, and destined for any of subscriber devices 18, P-PE router 80 of metro transport network 24 injects the content into EVPN 26 for transport to one or more of A-PEs 36 based on the address prefixes advertised in the EVPN by the A-PEs 36 (116). A-PEs 36 receive the content from EVPN 26, de-encapsulate the content from the transport layer EVPN packets and forward IP packets encapsulating the content to subscriber devices 18.

FIG. 4 is a block diagram illustrating an exemplary router 180 capable of performing the disclosed techniques. In general, router 180 may operate substantially similar to A-PEs 36, N-PEs 30 or P-PEs 80 as described with respect to FIGS. 2-3.

In this example, router 180 includes interface cards 188A-88N (“IFCs 188”) that receive packets via incoming links 190A-190N (“incoming links 190”) and send packets via outbound links 192A-192N (“outbound links 192”). IFCs 188 are typically coupled to links 190, 192 via a number of interface ports. Router 180 also includes a control unit 182 that determines routes of received packets and forwards the packets accordingly via IFCs 188.

Control unit 182 may comprise a routing engine 184 and a packet forwarding engine 186. Routing engine 184 operates as the control plane for router 180 and includes an operating system that provides a multi-tasking operating environment for execution of a number of concurrent processes. Routing engine 184, for example, executes software instructions to implement one or more control plane networking protocols 197. For example, protocols 197 may include one or more routing protocols, such as Border Gateway Protocol (BGP) 193, for exchanging routing information with other routing devices and for updating routing information 194. Routing information 194 may describe a topology of the computer network in which router 180 resides, and may also include routes through the network. Routing information 194 describes various routes within the computer network, and the appropriate next hops for each route, i.e., the neighboring routing devices along each of the routes. Routing engine 184 analyzes stored routing information 194 and generates forwarding information 196 for forwarding engine 186. Forwarding information 196 may associate, for example, network destinations for subscribers with specific next hops and corresponding IFCs 188 and physical output ports for output links 192. Moreover, forwarding information 196 may specify operations, such as encapsulation with EVPN assigned labels or de-encapsulation of packets, to be applied when forwarding packets to the next hops. Forwarding information 196 may be a radix tree programmed into dedicated forwarding chips, a series of tables, a complex database, a link list, a radix tree, a database, a flat file, or various other data structures.

In the example of FIG. 4, routing engine 184, also referred to as a control plane for router 180, executes EVPN protocol 187, which operates to communicate with other routers to establish and maintain an EVPN, such as the EVPN 26, for transporting communications through metro transport network 24 so as to logically extend an Ethernet network through the intermediate network. EVPN protocol 187 may, for example, communicate with EVPN protocols executing on remote routers to establish tunnels (e.g., LSPs or GRE or other tunneling mechanisms such as VXLAN) that utilize appropriate tunneling mechanism on packets for transporting the packets through the EVPN enabled metro network. EVPN protocol 187 maintains MAC address tables 181 in the control plane of router 180, where the MAC tables associate L2 customer MAC addresses with specific tunnels for reaching the associated MAC address. When implementing an EVPN, L2 MAC+IP address learning may be performed in the control plane by exchanging, with remote PE devices, BGP messages containing customer MAC+IP addresses. EVPN protocol 187 communicates information recorded in MAC tables 181 to forwarding engine 186 so as to configure forwarding information 196. In this way, forwarding engine 186 may be programmed with associations between each tunnel and output interface and specific source customer MAC addresses reachable via those tunnels. Additional example information with respect to the EVPN protocol is described in “BGP MPLS Based Ethernet VPN,” RFC 7432 the entire contents of which are incorporated herein by reference.

In addition, as described herein, BGP protocol 193 may receive IP Prefix Advertisement routes (i.e., Route Type 5) of a BGP EVPN 26. Upon receiving this type of L3 route advertisement for the EVPN, BGP protocol 193 may output updates routing information 194 and advertises the routes through any BGP peering relationship, such as BGP session 42. Moreover, BGP protocol 193 forwards the L3 information to EVPN protocol 187, which updates forwarding information 196 associated with EVPN 26 to specify the appropriate next hop and encapsulation information necessary for tunneling packets destined to the L3 prefix through the EVPN.

The architecture of router 180 illustrated in FIG. 4 is shown for exemplary purposes only. The invention is not limited to this architecture. In other examples, router 180 may be configured in a variety of ways. In one example, some of the functionally of control unit 182 may be distributed within IFCs 188. In another example, control unit 182 may comprise a plurality of packet forwarding engines operated as slave routers.

Control unit 182 may be implemented solely in software, or hardware, or may be implemented as a combination of software, hardware, or firmware. For example, control unit 182 may include one or more processors which execute software instructions. In that case, the various software modules of control unit 182 may comprise executable instructions stored on a computer-readable medium, such as computer memory or hard disk.

The techniques described herein may be implemented in hardware, software, firmware, or any combination thereof. Various features described as modules, units or components may be implemented together in an integrated logic device or separately as discrete but interoperable logic devices or other hardware devices. In some cases, various features of electronic circuitry may be implemented as one or more integrated circuit devices, such as an integrated circuit chip or chipset.

If implemented in hardware, this disclosure may be directed to an apparatus such as a processor or an integrated circuit device, such as an integrated circuit chip or chipset. Alternatively or additionally, if implemented in software or firmware, the techniques may be realized at least in part by a computer-readable data storage medium comprising instructions that, when executed, cause a processor to perform one or more of the methods described above. For example, the computer-readable data storage medium may store such instructions for execution by a processor.

A computer-readable medium may form part of a computer program product, which may include packaging materials. A computer-readable medium may comprise a computer data storage medium such as random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), Flash memory, magnetic or optical data storage media, and the like. In some examples, an article of manufacture may comprise one or more computer-readable storage media.

In some examples, the computer-readable storage media may comprise non-transitory media. The term “non-transitory” may indicate that the storage medium is not embodied in a carrier wave or a propagated signal. In certain examples, a non-transitory storage medium may store data that can, over time, change (e.g., in RAM or cache).

The code or instructions may be software and/or firmware executed by processing circuitry including one or more processors, such as one or more digital signal processors (DSPs), general purpose microprocessors, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Accordingly, the term “processor,” as used herein may refer to any of the foregoing structure or any other structure suitable for implementation of the techniques described herein. In addition, in some aspects, functionality described in this disclosure may be provided within software modules or hardware modules.

Various embodiments have been described. These and other embodiments are within the scope of the following examples. 

What is claimed is:
 1. A method comprising: establishing an Ethernet Virtual Private Network (EVPN) within a metro transport network positioned between at least one Internet service provider network and a set of subscriber devices, wherein the metro transport network provides layer two (L2) packet switching for transporting network packets between the Internet service provider network and the subscriber devices, wherein the Internet service provider network authenticates the subscriber devices and allocates the subscriber devices respective Internet Protocol (IP) network addresses from an IP network address prefix assigned to the Internet service provider network, and wherein the EVPN is established within the metro transport network by at least one access router that is connected to the subscriber devices by one or more access links and by at least one peering router of the metro transport network; outputting, within the EVPN by the access router and to the peering router, an EVPN route advertisement that advertises network address reachability information of the subscriber devices on behalf of the Internet service provider network, wherein the EVPN route advertisement indicates that the subscriber devices are reachable through the access router; outputting, with the peering router of the metro transport network, a routing protocol route advertisement that advertises the network address reachability information of the subscriber devices to a border router of a content data network; receiving, with the peering router of the metro transport network and directly from the content data network bypassing the Internet service provider network, packets addressed to one or more of the subscriber devices; encapsulating, with the access router, the packets and tunneling the packets through the EVPN-enabled metro transport network from the peering router to the access router; and with the access router, de-encapsulating the packets from the metro transport network and forwarding the packets to the one or more subscriber devices.
 2. The method of claim 1, wherein outputting an EVPN route advertisement that advertises the network address reachability information of the subscriber devices comprises constructing and outputting a routing protocol message of Route Type 5 carrying the IP network address prefix or of Route Type 2 carrying the MAC addresses and IP addresses of the subscribers.
 3. The method of claim 1, further comprising outputting, from a gateway router of the Internet service provider network, a message that specifies to the access router of the metro transport network the IP address prefix to be advertised by the access router on behalf of the Internet service provider network.
 4. The method of claim 3, wherein the message comprises a Border Gateway Protocol (BGP) routing protocol message that has been enhanced to specify the network address reachability information to be advertised by the access router.
 5. A system comprising: a metro transport network positioned between a set of subscriber devices and at least one Internet service provider network that authenticates the subscriber devices and allocates the subscriber devices respective layer three (L3) addresses from a respective Internet Protocol (IP) network address prefix assigned to the Internet service provider network, wherein the metro transport network provides layer two (L2) packet switching for transporting network packets between the Internet service provider network and the subscriber devices, wherein the metro transport network comprises at least one access router that is connected to the subscriber devices by one or more access links and at least one peering router of the metro transport network; wherein the access router and the peering router establish an Ethernet Virtual Private Network (EVPN) within the metro transport network, wherein the access router outputs, within the EVPN and to the peering router, an EVPN route advertisement that advertises network address reachability information of the subscriber devices on behalf of the Internet service provider network, wherein the EVPN route advertisement specifies the network address reachability information of the subscriber devices and indicates that the subscriber devices are reachable through the access router, wherein the peering router of the metro transport network is configured to output a routing protocol route advertisement that advertises the network address reachability information to a border router of a content data network and receives, directly from the content data network bypassing the Internet service provider network, packets addressed to one or more of the subscriber devices, wherein the peering router of the metro transport network is configured to encapsulate packets and tunnel the packets through the EVPN-enabled metro transport network from peering router to the access router; and wherein the access router is configured de-encapsulate the packets from the metro transport network and forward the packets to the one or more subscriber devices.
 6. The system of claim 5, wherein the access router is configured to output the EVPN route advertisement by constructing and outputting a Border Gateway Protocol (BGP) routing protocol message of Route Type 5 carrying the IP network address prefix or Route Type 2 carrying a MAC/IP address combination.
 7. The system of claim 5, further comprising a gateway router of the Internet service provider network configured to output a message to the access router of the metro transport network that specifies the network address reachability information of the subscriber devices to be advertised by the access router on behalf of the Internet service provider network.
 8. The system of claim 7, wherein the message comprises a Border Gateway Protocol (BGP) routing protocol message that has been enhanced to specify the network address reachability information to be advertised by the access router.
 9. An access router of a metro transport network positioned between at least one Internet service provider network and a set of subscriber devices for which the Internet service provider has authenticated and allocated respective Internet Protocol (IP) network addresses from an IP network address prefix assigned to the Internet service, the access router comprising: a control unit having at least one processor coupled to a memory, wherein the control unit executes software configured to establish an Ethernet Virtual Private Network (EVPN) with a peering router within the metro transport network, wherein the control unit is configured to receive data specifying network address reachability information of the subscriber devices of the Internet service provider network and output, within the EVPN and to the peering router, an EVPN route advertisement that advertises the network address reachability information of the subscriber devices on behalf of the Internet service provider network, wherein the EVPN route advertisement specifies the network address reachability information of the subscriber devices and indicates that the subscriber devices of the Internet service provider network are reachable through the access router, and wherein the access router receives, from the peering router, packets tunneled through the EVPN-enabled metro transport network from the peering router to the access router, and wherein the access router, de-encapsulates the packets from the metro transport network and forwards the packets to the one or more subscriber devices.
 10. The access router of claim 9, wherein the access router is configured to output the EVPN route advertisement by constructing and outputting a Border Gateway Protocol (BGP) routing protocol message of Route Type 5 L3 network address prefix or Route Type 2 carrying a MAC/IP address combination. 